The packages of tidyverse help imensely with data cleaning and initial visualization.

library("tidyverse")
-- Attaching packages --------------------------------------- tidyverse 1.2.1 --
v ggplot2 3.0.0     v purrr   0.2.5
v tibble  1.4.2     v dplyr   0.7.6
v tidyr   0.8.1     v stringr 1.3.1
v readr   1.1.1     v forcats 0.3.0
-- Conflicts ------------------------------------------ tidyverse_conflicts() --
x dplyr::filter() masks stats::filter()
x dplyr::lag()    masks stats::lag()

We now extract and use the dataset from our sources. first the biggest and messiest dataset!

init.data<- data.frame(read.csv("../data/WEF_TTCR17_data_for_download.csv"))
as_tibble(init.data)
init.data

We can see that this is now viewable as a dataframe . We immediately see that there are a lot of columns and values that we just arent interested in. The analysis will entail tourism spending and other characteristics pertaining to 28 the EU member states. First order would be filter out only the relevant 28 states.

colnames(init.data) <- as.character(unlist(init.data[1,]))
init.data

To achieve our goal we first convert the header to meaningful data. We then create a column vector with the relevant columns needed and subset the data to get relevant fields for our 28 member states.

reqCol <- c('Series','Attribute','AUT', 'BEL', 'BGR', 'HRV', 'CYP', 'CZE', 'DNK', 'EST', 'FIN', 'FRA', 'DEU', 'GRC', 'HUN', 'IRL', 'ITA', 'LVA', 'LTU', 'LUX', 'MLT', 'NLD', 'POL', 'PRT', 'ROU', 'SVK', 'SVN', 'ESP', 'SWE', 'GBR')
prelimData <- init.data[,reqCol]
prelimData
WECTTCI17 <- select(WECTTCI17,-(Attribute))
WECTTCI17
Statista <- read_excel("../data/statistic_id314340_leading-european-city-tourism-destinations-in-2017-by-number-of-bednights.xlsx",sheet = "Data",skip=4)
names(Statista) <- c('City','Count')
Statista

automated loading of datasets from eurostat to ensure up to date data on Eu residents as updated by the primary source of data collection from the EU

dat2 <- get_eurostat("tour_dem_extot", filters = list(geo = c("AT", "FI","BE","BG","CH","CY"), sinceTimePeriod=2012,purpose="TOTAL",precision=1,duration="N_GE1",unit="THS_EUR",partner="DOM"), time_format = "num")
kable(dat2)
LS0tDQp0aXRsZTogIkRhdGEgbG9hZGluZyBhbmQgQ2xlYW5pbmciDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQpUaGUgcGFja2FnZXMgb2YgdGlkeXZlcnNlIGhlbHAgaW1lbnNlbHkgd2l0aCBkYXRhIGNsZWFuaW5nIGFuZCBpbml0aWFsIHZpc3VhbGl6YXRpb24uDQoNCmBgYHtyfQ0KbGlicmFyeSgidGlkeXZlcnNlIikNCmxpYnJhcnkocmVhZHhsKQ0KYGBgDQoNCldlIG5vdyBleHRyYWN0IGFuZCB1c2UgdGhlIGRhdGFzZXQgZnJvbSBvdXIgc291cmNlcy4NCmZpcnN0IHRoZSBiaWdnZXN0IGFuZCBtZXNzaWVzdCBkYXRhc2V0IQ0KDQpgYGB7cn0NCmluaXQuZGF0YTwtIGRhdGEuZnJhbWUocmVhZC5jc3YoIi4uL2RhdGEvV0VGX1RUQ1IxN19kYXRhX2Zvcl9kb3dubG9hZC5jc3YiKSkNCmFzX3RpYmJsZShpbml0LmRhdGEpDQppbml0LmRhdGENCmBgYA0KDQpXZSBjYW4gc2VlIHRoYXQgdGhpcyBpcyBub3cgdmlld2FibGUgYXMgYSBkYXRhZnJhbWUgLiBXZSBpbW1lZGlhdGVseSBzZWUgdGhhdCB0aGVyZSBhcmUgYSBsb3Qgb2YgY29sdW1ucyBhbmQgdmFsdWVzIHRoYXQgd2UganVzdCBhcmVudCBpbnRlcmVzdGVkIGluLiBUaGUgYW5hbHlzaXMgd2lsbCBlbnRhaWwgdG91cmlzbSBzcGVuZGluZyBhbmQgb3RoZXIgY2hhcmFjdGVyaXN0aWNzIHBlcnRhaW5pbmcgdG8gMjggdGhlIEVVIG1lbWJlciBzdGF0ZXMuDQpGaXJzdCBvcmRlciB3b3VsZCBiZSBmaWx0ZXIgb3V0IG9ubHkgdGhlIHJlbGV2YW50IDI4IHN0YXRlcy4NCmBgYHtyfQ0KY29sbmFtZXMoaW5pdC5kYXRhKSA8LSBhcy5jaGFyYWN0ZXIodW5saXN0KGluaXQuZGF0YVsxLF0pKQ0KaW5pdC5kYXRhDQpgYGANCg0KVG8gYWNoaWV2ZSBvdXIgZ29hbCB3ZSBmaXJzdCBjb252ZXJ0IHRoZSBoZWFkZXIgdG8gbWVhbmluZ2Z1bCBkYXRhLiANCldlIHRoZW4gY3JlYXRlIGEgY29sdW1uIHZlY3RvciB3aXRoIHRoZSByZWxldmFudCBjb2x1bW5zIG5lZWRlZCBhbmQgc3Vic2V0IHRoZSBkYXRhIHRvIGdldCByZWxldmFudCBmaWVsZHMgZm9yIG91ciAyOCBtZW1iZXIgc3RhdGVzLg0KDQpgYGB7cn0NCnJlcUNvbCA8LSBjKCdTZXJpZXMnLCdBdHRyaWJ1dGUnLCdBVVQnLCAnQkVMJywgJ0JHUicsICdIUlYnLCAnQ1lQJywgJ0NaRScsICdETksnLCAnRVNUJywgJ0ZJTicsICdGUkEnLCAnREVVJywgJ0dSQycsICdIVU4nLCAnSVJMJywgJ0lUQScsICdMVkEnLCAnTFRVJywgJ0xVWCcsICdNTFQnLCAnTkxEJywgJ1BPTCcsICdQUlQnLCAnUk9VJywgJ1NWSycsICdTVk4nLCAnRVNQJywgJ1NXRScsICdHQlInKQ0KcHJlbGltRGF0YSA8LSBpbml0LmRhdGFbLHJlcUNvbF0NCnByZWxpbURhdGENCmBgYA0KDQpgYGB7cn0NCldFQ1RUQ0kxNyA8LSBmaWx0ZXIocHJlbGltRGF0YSxBdHRyaWJ1dGUgPT0gJ1ZhbHVlJykNCldFQ1RUQ0kxNw0KYGBgDQoNCmBgYHtyfQ0KV0VDVFRDSTE3IDwtIHNlbGVjdChXRUNUVENJMTcsLShBdHRyaWJ1dGUpKQ0KV0VDVFRDSTE3DQpgYGANCg0KYGBge3J9DQpTdGF0aXN0YSA8LSByZWFkX2V4Y2VsKCIuLi9kYXRhL3N0YXRpc3RpY19pZDMxNDM0MF9sZWFkaW5nLWV1cm9wZWFuLWNpdHktdG91cmlzbS1kZXN0aW5hdGlvbnMtaW4tMjAxNy1ieS1udW1iZXItb2YtYmVkbmlnaHRzLnhsc3giLHNoZWV0ID0gIkRhdGEiLHNraXA9NCkNCm5hbWVzKFN0YXRpc3RhKSA8LSBjKCdDaXR5JywnQ291bnQnKQ0KU3RhdGlzdGENCmBgYA0KDQphdXRvbWF0ZWQgbG9hZGluZyBvZiBkYXRhc2V0cyBmcm9tIGV1cm9zdGF0IHRvIGVuc3VyZSB1cCB0byBkYXRlIGRhdGEgb24gRXUgcmVzaWRlbnRzIGFzIHVwZGF0ZWQgYnkgdGhlIHByaW1hcnkgc291cmNlIG9mIGRhdGEgY29sbGVjdGlvbiBmcm9tIHRoZSBFVQ0KYGBge3J9DQpkYXQyIDwtIGdldF9ldXJvc3RhdCgidG91cl9kZW1fZXh0b3QiLCBmaWx0ZXJzID0gbGlzdChnZW8gPSBjKCJBVCIsICJGSSIsIkJFIiwiQkciLCJDSCIsIkNZIiksIHNpbmNlVGltZVBlcmlvZD0yMDEyLHB1cnBvc2U9IlRPVEFMIixwcmVjaXNpb249MSxkdXJhdGlvbj0iTl9HRTEiLHVuaXQ9IlRIU19FVVIiLHBhcnRuZXI9IkRPTSIpLCB0aW1lX2Zvcm1hdCA9ICJudW0iKQ0Ka2FibGUoZGF0MikNCmBgYA0KDQo=